using System.Threading.Tasks;

namespace DatabaseBackup.Services
{
    /// <summary>
    /// 数据库备份服务接口
    /// </summary>
    public interface IBackupService<in TConfig>
    {
        /// <summary>
        /// 执行数据库备份
        /// </summary>
        /// <param name="config">数据库配置</param>
        /// <param name="backupPath">备份路径</param>
        /// <returns>备份是否成功</returns>
        Task<bool> BackupAsync(TConfig config, string backupPath);
    }
}
